package com.guochu.pro.entity;

import java.time.LocalDateTime;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.guochu.common.infrastructure.IEntity;

import java.io.Serializable;

/**
 * 产品表(Task)实体类
 *
 * @author makejava
 * @since 2021-10-14 21:34:29
 */
public class Task extends IEntity implements Serializable {
    private static final long serialVersionUID = 915782997293659430L;
    /**
     * 任务编号
     */
    private String taskNumber;
    /**
     * 任务地址
     */
    private String taskAddress;
    /**
     * 任务联系人
     */
    private String contacts;
    /**
     * 任务联系号码
     */
    private String mobile;
    /**
     * 预算
     */
    private Double budget;
    /**
     * 工期
     */
    private String duration;
    /**
     * 任务简介
     */
    private String introduction;
    /**
     * 任务图片
     */
    private String taskPicture;

    /**
     * 任务分类
     */
    private String taskTypeId;
    /**
     * 任务分类名称
     */
    private String taskTypeName;
    /**
     * 审核状态 1待审核 2已通过 3不通过
     */
    private Integer auditState;
    /**
     * 任务状态 1待接单 2待开工 3待完成 4待评价 9已删除
     */
    private Integer taskState;

    /**
     * 接单人ID
     */
    private String executorId;
    /**
     * 接单人姓名
     */
    private String executorName;

    /**
     * 开工时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime startDate;
    /**
     * 完工时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endDate;

    public String getTaskNumber() {
        return taskNumber;
    }

    public void setTaskNumber(String taskNumber) {
        this.taskNumber = taskNumber;
    }

    public String getTaskAddress() {
        return taskAddress;
    }

    public void setTaskAddress(String taskAddress) {
        this.taskAddress = taskAddress;
    }

    public String getContacts() {
        return contacts;
    }

    public void setContacts(String contacts) {
        this.contacts = contacts;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public Double getBudget() {
        return budget;
    }

    public void setBudget(Double budget) {
        this.budget = budget;
    }

    public String getDuration() {
        return duration;
    }

    public void setDuration(String duration) {
        this.duration = duration;
    }

    public String getIntroduction() {
        return introduction;
    }

    public void setIntroduction(String introduction) {
        this.introduction = introduction;
    }

    public String getTaskPicture() {
        return taskPicture;
    }

    public void setTaskPicture(String taskPicture) {
        this.taskPicture = taskPicture;
    }

    public String getTaskTypeId() {
        return taskTypeId;
    }

    public void setTaskTypeId(String taskTypeId) {
        this.taskTypeId = taskTypeId;
    }

    public String getTaskTypeName() {
        return taskTypeName;
    }

    public void setTaskTypeName(String taskTypeName) {
        this.taskTypeName = taskTypeName;
    }


    public Integer getAuditState() {
        return auditState;
    }

    public void setAuditState(Integer auditState) {
        this.auditState = auditState;
    }

    public Integer getTaskState() {
        return taskState;
    }

    public void setTaskState(Integer taskState) {
        this.taskState = taskState;
    }


    public String getExecutorId() {
        return executorId;
    }

    public void setExecutorId(String executorId) {
        this.executorId = executorId;
    }

    public String getExecutorName() {
        return executorName;
    }

    public void setExecutorName(String executorName) {
        this.executorName = executorName;
    }


    public LocalDateTime getStartDate() {
        return startDate;
    }

    public void setStartDate(LocalDateTime startDate) {
        this.startDate = startDate;
    }

    public LocalDateTime getEndDate() {
        return endDate;
    }

    public void setEndDate(LocalDateTime endDate) {
        this.endDate = endDate;
    }

}
